Skip to content

fix(build-record): mark a build's edit in another repository, never refuse it - #134

Merged
mmaclay merged 1 commit into
mainfrom
fix/build-record-no-stop-elsewhere
Nov 11, 2026
Merged

mmaclay merged 1 commit into
mainfrom
fix/build-record-no-stop-elsewhere

Conversation

@mmaclay

@mmaclay mmaclay commented Nov 11, 2026

Copy link
Copy Markdown
Member

hooks/build-record.sh records what an implement-change build did, and pr-create prints it as the PR's Already checked block. The record lives in the .review/ of the repository the session started in, so an edit in another repository would count that work as this build's. The hook handled that by refusing the first such edit and having the model ask the person to Stop or Go on unrecorded. That stop interrupted cross-repository work mid-build (for example, a libera_cdk session that also had to change libera_utils), often after the person had already said the work belonged in that session, and the answer was always to go on. Once this merges, the hook marks the build and lets the edit through, so the block reads Gates: not recorded, this session also edited <repo> … and nothing stops.

implement-change no longer asks the question either: it says once that the change is in another repository and goes on.

Two smaller changes ride along:

  • A mark appended to a log line cut short could not be read, which would have left counted gates for a build that worked elsewhere. The hook now reads the mark back and writes it once more.
  • The summary's tried to edit <repo> form had no producer once nothing is refused, so every marked repository reads edited <repo>. No script parses that form, and the block's version is unchanged, as when the form was added.

Guarded by the cross-repository section of tests/test_build_record.sh: an edit there passes with no output and keeps the lock, one mark per repository, a refused mark from an older log counts as a mark, and a mark after a cut-short line is written again.

Origin: the maintainer's complaint in a working session that the build hook's cross-repository Stop / Go on unrecorded question halts work and is always answered "go on"
Sandbox: none; no scenario edits a second repository, so the change rests on tests/test_build_record.sh
Canary: none yet

🤖 Generated with Claude Code. AI assistance level: 5/5 (not read by a person).

…efuse it

- Let a Write, Edit or NotebookEdit in another repository through
  during an open build, marking the build once per repository
- Write the mark again when it does not read back, as after a log
  line cut short
- Summarize every marked repository as `edited <repo>`
- Drop implement-change's Stop / Go on unrecorded question
- Update the README, contracts and design notes

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@mmaclay mmaclay self-assigned this Nov 11, 2026
@mmaclay
mmaclay marked this pull request as ready for review November 11, 2026 06:09
@mmaclay
mmaclay merged commit fe50875 into main Nov 11, 2026
1 check passed
@mmaclay
mmaclay deleted the fix/build-record-no-stop-elsewhere branch November 11, 2026 15:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant